﻿using System;
using System.Collections.Generic;
using System.Text;
using System.Data.SqlClient;
using System.Data;
using ModeloDesenvolvimento;

/*ESCRITO DIA 04/01/2012*/
namespace Poligas_ERP.Classes
{
    public class TipoSituacoes
    {
        SqlConnection cnx = new SqlConnection();
        SqlCommand cmd = new SqlCommand();
        DataTable tbTipoSituacoes = new DataTable();
        DataTable tbLista = new DataTable();

        Db db = new Db();

        public TipoSituacoes() { }

        public DataTable LocalizarDados(String Pesquisar)
        {
            try
            {
                cnx = db.AbreConexao("strConexao");
                cmd = db.getCommand(cnx);

                cmd.Parameters.AddWithValue("@Descricao", Pesquisar);

                cmd.CommandText = "spTipossituacoesSelectPesquisa";

                tbLista.Clear();
                tbLista.Load(cmd.ExecuteReader());
            }
            catch
            {
            }
            finally
            {
                db.FechaConexao(cnx);
            }
            return tbLista;
        }
        public DataTable RecuperarDadosPorCodigo(Int32 CodTiposSituacao)
        {
            try
            {
                cnx = db.AbreConexao("strConexao");
                cmd = db.getCommand(cnx);

                cmd.Parameters.AddWithValue("@CodTiposSituacao", CodTiposSituacao);
                cmd.CommandText = "spTipossituacoesSelect";

                tbTipoSituacoes.Clear();
                tbTipoSituacoes.Load(cmd.ExecuteReader());
            }
            catch
            {
            }
            finally
            {
                db.FechaConexao(cnx);
            }

            return tbTipoSituacoes;
        }
        public Boolean Inserir(String Descricao, Boolean Ativo)
        {
            Boolean erro = false;

            try
            {
                cnx = db.AbreConexao("strConexao");
                cmd = db.getCommand(cnx);

                cmd.Parameters.AddWithValue("@Descricao", Descricao);
                cmd.Parameters.AddWithValue("@Ativo", Ativo);

                cmd.CommandText = "spTipossituacoesInsert";
                cmd.ExecuteNonQuery();

            }
            catch
            {
                erro = true;
            }
            finally
            {
                db.FechaConexao(cnx);
            }

            return erro;

        }
        public Boolean Alterar(Int32 CodTiposSituacao, String Descricao, Boolean Ativo)
        {
            Boolean erro = false;

            try
            {
                cnx = db.AbreConexao("strConexao");
                cmd = db.getCommand(cnx);

                cmd.Parameters.AddWithValue("@CodTiposSituacao", CodTiposSituacao);
                cmd.Parameters.AddWithValue("@Descricao", Descricao);
                cmd.Parameters.AddWithValue("@Ativo", Ativo);

                cmd.CommandText = "spTipossituacoesUpdate";
                cmd.ExecuteNonQuery();

            }
            catch
            {
                erro = true;
            }
            finally
            {
                db.FechaConexao(cnx);
            }

            return erro;
        }
        public Boolean Excluir(Int32 CodTiposSituacao)
        {
            Boolean sucesso = true;

            if(CodTiposSituacao < 0)
            {
                sucesso = false;
            }
            else
            {
                try
                {
                    cnx = db.AbreConexao("strConexao");
                    cmd = db.getCommand(cnx);

                    cmd.Parameters.AddWithValue("@CodTiposSituacao", CodTiposSituacao);
                    cmd.CommandText = "spTipossituacoesDelete";

                    cmd.ExecuteNonQuery();

                }
                catch
                {
                    sucesso = false;
                }
                finally
                {
                    db.FechaConexao(cnx);
                }
            }
            return sucesso;
        }
    }
}
